﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Windows.Forms;
using qlHieuThuocDongY.DataAccess;
using qlHieuThuocDongY.BusinessObject;
namespace qlHieuThuocDongY.BusinessLogic
{
    class BanThuocBUS
    {
         ConnectData connData = new ConnectData();
        // Lấy danh sách Thuốc Bán
        public DataTable LayDanhSachThuocBan()
        {
            string sql = "SELECT MaHDBan, MaThuoc ,MaBN, SoLuong, NgayBan FROM BanThuoc";
            return connData.GetDataTable(sql);
        }

        // Thêm
        public bool ThemNhapThuoc(BanThuoc banthuoc)
        {
            if (KiemTraTruocKhiLuu(banthuoc))
            {
                string sql = string.Format("INSERT INTO BanThuoc(MaHDBan, MaThuoc, MaBN, SoLuong, NgayBan) "
                    + "VALUES ('{0}','{1}','{2}',{3},'{4}')", banthuoc.MaHDBan, banthuoc.MaThuoc, banthuoc.MaBN, banthuoc.SoLuong, banthuoc.NgayBan.ToString("dd/MM/yyyy"));
                if (connData.ExcuteQuery(sql))
                {
                    MessageBox.Show("Thêm Thành Công", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return true;
                }
            }
            return false;
        }

        public bool CheckExists(string mahoadonban)
        {
            if (connData.CheckExistValue("BanThuoc", "MaHDBan", mahoadonban))
                return true;
            return false;

        }

        // Sửa

        public bool SuaThuocBan(BanThuoc banthuoc)
        {
            if (KiemTraTruocKhiLuu(banthuoc))
            {
                string sql = string.Format("UPDATE BanThuoc SET MaThuoc = '{0}', MaBN = '{1}', "
                + "SoLuong = {2}, NgayBan = '{3}' WHERE MaHDBan = '{4}' ",
                    banthuoc.MaThuoc, banthuoc.MaBN, banthuoc.SoLuong, banthuoc.NgayBan.ToString("dd/MM/yyyy"), banthuoc.MaHDBan);
                if (connData.ExcuteQuery(sql))
                {
                    MessageBox.Show("Sửa Thành Công", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return true;
                }
            }
            return false;
        }

        // Xóa

        public bool XoaBanThuoc(string mahoadonban)
        {
            string sql = "DELETE FROM BanThuoc WHERE MaHDBan in ('" + mahoadonban + "')";
            if (connData.ExcuteQuery(sql))
            {
                MessageBox.Show("Xóa Thành Công!", "Thông Tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return true;

            }
            return false;
        }
        // Kiểm tra trước khi Save
        public bool KiemTraTruocKhiLuu(BanThuoc banthuoc)
        {
            if (banthuoc.SoLuong.Equals(""))
            {
                MessageBox.Show("Số Lượng Không Hợp Lệ");
                return false;
            }

            return true;
        }

        // Hàm tìm mã bệnh nhân kế tiếp
        public string NextID()
        {
            return Utilities.NextID(connData.GetLasID("BanThuoc", "MaHDBan"), "HDB");
        }

    }
}
